// pages/eat-history/eat-history.js
var Api = require('../../utils/api.js');

Page({
  data: {
    addMoreText: "点击加载更多...",
    eatDates: [],
    result: []
  },
  onShareAppMessage(o) {},

  onLoad: function (options) {
    var that = this;
    wx.request({
      url: Api.eatDates(),
      success(res) {
        that.setData({
          eatDates: res.data
        });
        that.getData();
      },
      fail() { // 如果请求失败，使用模拟的 eatDates 数据
        console.log("请求失败，使用模拟数据");
        that.setData({
          eatDates: [
            { date: '2024-11-07' },
            { date: '2024-11-06' },
            { date: '2024-11-05' }
          ]
        });
        that.getData();
      }
    });
  },

  getData: function () {
    if (this.data.eatDates.length > 0) {
      var day = this.data.eatDates.pop().date; // 取出日期
    }

    if (!day) {
      this.setData({
        addMoreText: "没有数据了😁"
      });
      return;
    }

    var that = this;
    wx.request({
      url: Api.eat({ day: day }),
      success(res) {
        // 保留完整日期用于跳转，添加显示日期字段
        res.data.fullDate = res.data.date || day; // 保存完整日期
        res.data.displayDate = (res.data.date || day).slice(5); // 显示日期（只显示月-日）
        var tempArr = that.data.result;
        tempArr.push(res.data);
        that.setData({
          result: tempArr
        });
        
        // 如果是第一次加载的数据，自动加载更多数据
        if (tempArr.length === 1) {
          that.getData();
        }
      },
      fail() { // 如果请求失败，跳过这条记录
        console.log("加载数据失败，跳过该日期:", day);
      }
    });
  },

  addMore: function () {
    this.getData();
  },

  onReachBottom(e) {
    this.getData();
  }
});
